import 'package:enterprise_v6_app/generated/json/base/json_convert_content.dart';
import 'package:enterprise_v6_app/app/data/entities/application/education/education_quiz_result_entity.dart';

EducationQuizResultEntity $EducationQuizResultEntityFromJson(Map<String, dynamic> json) {
  final EducationQuizResultEntity educationQuizResultEntity = EducationQuizResultEntity();
  final int? answerCount = jsonConvert.convert<int>(json['answerCount']);
  if (answerCount != null) {
    educationQuizResultEntity.answerCount = answerCount;
  }
  final String? companyCode = jsonConvert.convert<String>(json['companyCode']);
  if (companyCode != null) {
    educationQuizResultEntity.companyCode = companyCode;
  }
  final String? createBy = jsonConvert.convert<String>(json['createBy']);
  if (createBy != null) {
    educationQuizResultEntity.createBy = createBy;
  }
  final String? createById = jsonConvert.convert<String>(json['createById']);
  if (createById != null) {
    educationQuizResultEntity.createById = createById;
  }
  final String? createDate = jsonConvert.convert<String>(json['createDate']);
  if (createDate != null) {
    educationQuizResultEntity.createDate = createDate;
  }
  final String? deleted = jsonConvert.convert<String>(json['deleted']);
  if (deleted != null) {
    educationQuizResultEntity.deleted = deleted;
  }
  final String? id = jsonConvert.convert<String>(json['id']);
  if (id != null) {
    educationQuizResultEntity.id = id;
  }
  final List<EducationQuizResultMainVOS>? mainVOS = (json['mainVOS'] as List<dynamic>?)?.map(
          (e) => jsonConvert.convert<EducationQuizResultMainVOS>(e) as EducationQuizResultMainVOS).toList();
  if (mainVOS != null) {
    educationQuizResultEntity.mainVOS = mainVOS;
  }
  final int? makeUpExamination = jsonConvert.convert<int>(json['makeUpExamination']);
  if (makeUpExamination != null) {
    educationQuizResultEntity.makeUpExamination = makeUpExamination;
  }
  final String? planId = jsonConvert.convert<String>(json['planId']);
  if (planId != null) {
    educationQuizResultEntity.planId = planId;
  }
  final int? questionCount = jsonConvert.convert<int>(json['questionCount']);
  if (questionCount != null) {
    educationQuizResultEntity.questionCount = questionCount;
  }
  final List<EducationQuizResultQuestionList>? questionList = (json['questionList'] as List<dynamic>?)?.map(
          (e) => jsonConvert.convert<EducationQuizResultQuestionList>(e) as EducationQuizResultQuestionList).toList();
  if (questionList != null) {
    educationQuizResultEntity.questionList = questionList;
  }
  final String? questionValue = jsonConvert.convert<String>(json['questionValue']);
  if (questionValue != null) {
    educationQuizResultEntity.questionValue = questionValue;
  }
  final int? score = jsonConvert.convert<int>(json['score']);
  if (score != null) {
    educationQuizResultEntity.score = score;
  }
  final String? textbookId = jsonConvert.convert<String>(json['textbookId']);
  if (textbookId != null) {
    educationQuizResultEntity.textbookId = textbookId;
  }
  final String? timeCount = jsonConvert.convert<String>(json['timeCount']);
  if (timeCount != null) {
    educationQuizResultEntity.timeCount = timeCount;
  }
  final int? totalScore = jsonConvert.convert<int>(json['totalScore']);
  if (totalScore != null) {
    educationQuizResultEntity.totalScore = totalScore;
  }
  final int? unansweredCount = jsonConvert.convert<int>(json['unansweredCount']);
  if (unansweredCount != null) {
    educationQuizResultEntity.unansweredCount = unansweredCount;
  }
  final String? updateBy = jsonConvert.convert<String>(json['updateBy']);
  if (updateBy != null) {
    educationQuizResultEntity.updateBy = updateBy;
  }
  final String? updateById = jsonConvert.convert<String>(json['updateById']);
  if (updateById != null) {
    educationQuizResultEntity.updateById = updateById;
  }
  final String? updateDate = jsonConvert.convert<String>(json['updateDate']);
  if (updateDate != null) {
    educationQuizResultEntity.updateDate = updateDate;
  }
  final String? userDepartmentId = jsonConvert.convert<String>(json['userDepartmentId']);
  if (userDepartmentId != null) {
    educationQuizResultEntity.userDepartmentId = userDepartmentId;
  }
  final String? userDepartmentName = jsonConvert.convert<String>(json['userDepartmentName']);
  if (userDepartmentName != null) {
    educationQuizResultEntity.userDepartmentName = userDepartmentName;
  }
  final String? userId = jsonConvert.convert<String>(json['userId']);
  if (userId != null) {
    educationQuizResultEntity.userId = userId;
  }
  final String? userName = jsonConvert.convert<String>(json['userName']);
  if (userName != null) {
    educationQuizResultEntity.userName = userName;
  }
  final int? wrongCount = jsonConvert.convert<int>(json['wrongCount']);
  if (wrongCount != null) {
    educationQuizResultEntity.wrongCount = wrongCount;
  }
  return educationQuizResultEntity;
}

Map<String, dynamic> $EducationQuizResultEntityToJson(EducationQuizResultEntity entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['answerCount'] = entity.answerCount;
  data['companyCode'] = entity.companyCode;
  data['createBy'] = entity.createBy;
  data['createById'] = entity.createById;
  data['createDate'] = entity.createDate;
  data['deleted'] = entity.deleted;
  data['id'] = entity.id;
  data['mainVOS'] = entity.mainVOS.map((v) => v.toJson()).toList();
  data['makeUpExamination'] = entity.makeUpExamination;
  data['planId'] = entity.planId;
  data['questionCount'] = entity.questionCount;
  data['questionList'] = entity.questionList.map((v) => v.toJson()).toList();
  data['questionValue'] = entity.questionValue;
  data['score'] = entity.score;
  data['textbookId'] = entity.textbookId;
  data['timeCount'] = entity.timeCount;
  data['totalScore'] = entity.totalScore;
  data['unansweredCount'] = entity.unansweredCount;
  data['updateBy'] = entity.updateBy;
  data['updateById'] = entity.updateById;
  data['updateDate'] = entity.updateDate;
  data['userDepartmentId'] = entity.userDepartmentId;
  data['userDepartmentName'] = entity.userDepartmentName;
  data['userId'] = entity.userId;
  data['userName'] = entity.userName;
  data['wrongCount'] = entity.wrongCount;
  return data;
}

extension EducationQuizResultEntityExtension on EducationQuizResultEntity {
  EducationQuizResultEntity copyWith({
    int? answerCount,
    String? companyCode,
    String? createBy,
    String? createById,
    String? createDate,
    String? deleted,
    String? id,
    List<EducationQuizResultMainVOS>? mainVOS,
    int? makeUpExamination,
    String? planId,
    int? questionCount,
    List<EducationQuizResultQuestionList>? questionList,
    String? questionValue,
    int? score,
    String? textbookId,
    String? timeCount,
    int? totalScore,
    int? unansweredCount,
    String? updateBy,
    String? updateById,
    String? updateDate,
    String? userDepartmentId,
    String? userDepartmentName,
    String? userId,
    String? userName,
    int? wrongCount,
  }) {
    return EducationQuizResultEntity()
      ..answerCount = answerCount ?? this.answerCount
      ..companyCode = companyCode ?? this.companyCode
      ..createBy = createBy ?? this.createBy
      ..createById = createById ?? this.createById
      ..createDate = createDate ?? this.createDate
      ..deleted = deleted ?? this.deleted
      ..id = id ?? this.id
      ..mainVOS = mainVOS ?? this.mainVOS
      ..makeUpExamination = makeUpExamination ?? this.makeUpExamination
      ..planId = planId ?? this.planId
      ..questionCount = questionCount ?? this.questionCount
      ..questionList = questionList ?? this.questionList
      ..questionValue = questionValue ?? this.questionValue
      ..score = score ?? this.score
      ..textbookId = textbookId ?? this.textbookId
      ..timeCount = timeCount ?? this.timeCount
      ..totalScore = totalScore ?? this.totalScore
      ..unansweredCount = unansweredCount ?? this.unansweredCount
      ..updateBy = updateBy ?? this.updateBy
      ..updateById = updateById ?? this.updateById
      ..updateDate = updateDate ?? this.updateDate
      ..userDepartmentId = userDepartmentId ?? this.userDepartmentId
      ..userDepartmentName = userDepartmentName ?? this.userDepartmentName
      ..userId = userId ?? this.userId
      ..userName = userName ?? this.userName
      ..wrongCount = wrongCount ?? this.wrongCount;
  }
}

EducationQuizResultMainVOS $EducationQuizResultMainVOSFromJson(Map<String, dynamic> json) {
  final EducationQuizResultMainVOS educationQuizResultMainVOS = EducationQuizResultMainVOS();
  final String? duration = jsonConvert.convert<String>(json['duration']);
  if (duration != null) {
    educationQuizResultMainVOS.duration = duration;
  }
  final List<EducationQuizResultMainVOSQuestionAllList>? questionAllList = (json['questionAllList'] as List<dynamic>?)?.map(
          (e) => jsonConvert.convert<EducationQuizResultMainVOSQuestionAllList>(e) as EducationQuizResultMainVOSQuestionAllList).toList();
  if (questionAllList != null) {
    educationQuizResultMainVOS.questionAllList = questionAllList;
  }
  final int? questionCount = jsonConvert.convert<int>(json['questionCount']);
  if (questionCount != null) {
    educationQuizResultMainVOS.questionCount = questionCount;
  }
  final List<EducationQuizResultMainVOSQuestionList>? questionList = (json['questionList'] as List<dynamic>?)?.map(
          (e) => jsonConvert.convert<EducationQuizResultMainVOSQuestionList>(e) as EducationQuizResultMainVOSQuestionList).toList();
  if (questionList != null) {
    educationQuizResultMainVOS.questionList = questionList;
  }
  final List<EducationQuizResultMainVOSQuestionListOne>? questionListOne = (json['questionListOne'] as List<dynamic>?)?.map(
          (e) => jsonConvert.convert<EducationQuizResultMainVOSQuestionListOne>(e) as EducationQuizResultMainVOSQuestionListOne).toList();
  if (questionListOne != null) {
    educationQuizResultMainVOS.questionListOne = questionListOne;
  }
  final int? questionScore = jsonConvert.convert<int>(json['questionScore']);
  if (questionScore != null) {
    educationQuizResultMainVOS.questionScore = questionScore;
  }
  final String? questionTypeDicId = jsonConvert.convert<String>(json['questionTypeDicId']);
  if (questionTypeDicId != null) {
    educationQuizResultMainVOS.questionTypeDicId = questionTypeDicId;
  }
  final String? timeCount = jsonConvert.convert<String>(json['timeCount']);
  if (timeCount != null) {
    educationQuizResultMainVOS.timeCount = timeCount;
  }
  return educationQuizResultMainVOS;
}

Map<String, dynamic> $EducationQuizResultMainVOSToJson(EducationQuizResultMainVOS entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['duration'] = entity.duration;
  data['questionAllList'] = entity.questionAllList.map((v) => v.toJson()).toList();
  data['questionCount'] = entity.questionCount;
  data['questionList'] = entity.questionList.map((v) => v.toJson()).toList();
  data['questionListOne'] = entity.questionListOne.map((v) => v.toJson()).toList();
  data['questionScore'] = entity.questionScore;
  data['questionTypeDicId'] = entity.questionTypeDicId;
  data['timeCount'] = entity.timeCount;
  return data;
}

extension EducationQuizResultMainVOSExtension on EducationQuizResultMainVOS {
  EducationQuizResultMainVOS copyWith({
    String? duration,
    List<EducationQuizResultMainVOSQuestionAllList>? questionAllList,
    int? questionCount,
    List<EducationQuizResultMainVOSQuestionList>? questionList,
    List<EducationQuizResultMainVOSQuestionListOne>? questionListOne,
    int? questionScore,
    String? questionTypeDicId,
    String? timeCount,
  }) {
    return EducationQuizResultMainVOS()
      ..duration = duration ?? this.duration
      ..questionAllList = questionAllList ?? this.questionAllList
      ..questionCount = questionCount ?? this.questionCount
      ..questionList = questionList ?? this.questionList
      ..questionListOne = questionListOne ?? this.questionListOne
      ..questionScore = questionScore ?? this.questionScore
      ..questionTypeDicId = questionTypeDicId ?? this.questionTypeDicId
      ..timeCount = timeCount ?? this.timeCount;
  }
}

EducationQuizResultMainVOSQuestionAllList $EducationQuizResultMainVOSQuestionAllListFromJson(Map<String, dynamic> json) {
  final EducationQuizResultMainVOSQuestionAllList educationQuizResultMainVOSQuestionAllList = EducationQuizResultMainVOSQuestionAllList();
  final String? companyCode = jsonConvert.convert<String>(json['companyCode']);
  if (companyCode != null) {
    educationQuizResultMainVOSQuestionAllList.companyCode = companyCode;
  }
  final String? createBy = jsonConvert.convert<String>(json['createBy']);
  if (createBy != null) {
    educationQuizResultMainVOSQuestionAllList.createBy = createBy;
  }
  final String? createById = jsonConvert.convert<String>(json['createById']);
  if (createById != null) {
    educationQuizResultMainVOSQuestionAllList.createById = createById;
  }
  final String? createDate = jsonConvert.convert<String>(json['createDate']);
  if (createDate != null) {
    educationQuizResultMainVOSQuestionAllList.createDate = createDate;
  }
  final String? deleted = jsonConvert.convert<String>(json['deleted']);
  if (deleted != null) {
    educationQuizResultMainVOSQuestionAllList.deleted = deleted;
  }
  final int? duration = jsonConvert.convert<int>(json['duration']);
  if (duration != null) {
    educationQuizResultMainVOSQuestionAllList.duration = duration;
  }
  final String? id = jsonConvert.convert<String>(json['id']);
  if (id != null) {
    educationQuizResultMainVOSQuestionAllList.id = id;
  }
  final String? myValidity = jsonConvert.convert<String>(json['myValidity']);
  if (myValidity != null) {
    educationQuizResultMainVOSQuestionAllList.myValidity = myValidity;
  }
  final String? optionA = jsonConvert.convert<String>(json['optionA']);
  if (optionA != null) {
    educationQuizResultMainVOSQuestionAllList.optionA = optionA;
  }
  final String? optionB = jsonConvert.convert<String>(json['optionB']);
  if (optionB != null) {
    educationQuizResultMainVOSQuestionAllList.optionB = optionB;
  }
  final String? optionC = jsonConvert.convert<String>(json['optionC']);
  if (optionC != null) {
    educationQuizResultMainVOSQuestionAllList.optionC = optionC;
  }
  final String? optionD = jsonConvert.convert<String>(json['optionD']);
  if (optionD != null) {
    educationQuizResultMainVOSQuestionAllList.optionD = optionD;
  }
  final String? parsing = jsonConvert.convert<String>(json['parsing']);
  if (parsing != null) {
    educationQuizResultMainVOSQuestionAllList.parsing = parsing;
  }
  final String? questionMain = jsonConvert.convert<String>(json['questionMain']);
  if (questionMain != null) {
    educationQuizResultMainVOSQuestionAllList.questionMain = questionMain;
  }
  final String? questionTypeDicId = jsonConvert.convert<String>(json['questionTypeDicId']);
  if (questionTypeDicId != null) {
    educationQuizResultMainVOSQuestionAllList.questionTypeDicId = questionTypeDicId;
  }
  final String? questionValidity = jsonConvert.convert<String>(json['questionValidity']);
  if (questionValidity != null) {
    educationQuizResultMainVOSQuestionAllList.questionValidity = questionValidity;
  }
  final int? score = jsonConvert.convert<int>(json['score']);
  if (score != null) {
    educationQuizResultMainVOSQuestionAllList.score = score;
  }
  final String? textbookId = jsonConvert.convert<String>(json['textbookId']);
  if (textbookId != null) {
    educationQuizResultMainVOSQuestionAllList.textbookId = textbookId;
  }
  final String? timeCount = jsonConvert.convert<String>(json['timeCount']);
  if (timeCount != null) {
    educationQuizResultMainVOSQuestionAllList.timeCount = timeCount;
  }
  final String? updateBy = jsonConvert.convert<String>(json['updateBy']);
  if (updateBy != null) {
    educationQuizResultMainVOSQuestionAllList.updateBy = updateBy;
  }
  final String? updateById = jsonConvert.convert<String>(json['updateById']);
  if (updateById != null) {
    educationQuizResultMainVOSQuestionAllList.updateById = updateById;
  }
  final String? updateDate = jsonConvert.convert<String>(json['updateDate']);
  if (updateDate != null) {
    educationQuizResultMainVOSQuestionAllList.updateDate = updateDate;
  }
  return educationQuizResultMainVOSQuestionAllList;
}

Map<String, dynamic> $EducationQuizResultMainVOSQuestionAllListToJson(EducationQuizResultMainVOSQuestionAllList entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['companyCode'] = entity.companyCode;
  data['createBy'] = entity.createBy;
  data['createById'] = entity.createById;
  data['createDate'] = entity.createDate;
  data['deleted'] = entity.deleted;
  data['duration'] = entity.duration;
  data['id'] = entity.id;
  data['myValidity'] = entity.myValidity;
  data['optionA'] = entity.optionA;
  data['optionB'] = entity.optionB;
  data['optionC'] = entity.optionC;
  data['optionD'] = entity.optionD;
  data['parsing'] = entity.parsing;
  data['questionMain'] = entity.questionMain;
  data['questionTypeDicId'] = entity.questionTypeDicId;
  data['questionValidity'] = entity.questionValidity;
  data['score'] = entity.score;
  data['textbookId'] = entity.textbookId;
  data['timeCount'] = entity.timeCount;
  data['updateBy'] = entity.updateBy;
  data['updateById'] = entity.updateById;
  data['updateDate'] = entity.updateDate;
  return data;
}

extension EducationQuizResultMainVOSQuestionAllListExtension on EducationQuizResultMainVOSQuestionAllList {
  EducationQuizResultMainVOSQuestionAllList copyWith({
    String? companyCode,
    String? createBy,
    String? createById,
    String? createDate,
    String? deleted,
    int? duration,
    String? id,
    String? myValidity,
    String? optionA,
    String? optionB,
    String? optionC,
    String? optionD,
    String? parsing,
    String? questionMain,
    String? questionTypeDicId,
    String? questionValidity,
    int? score,
    String? textbookId,
    String? timeCount,
    String? updateBy,
    String? updateById,
    String? updateDate,
  }) {
    return EducationQuizResultMainVOSQuestionAllList()
      ..companyCode = companyCode ?? this.companyCode
      ..createBy = createBy ?? this.createBy
      ..createById = createById ?? this.createById
      ..createDate = createDate ?? this.createDate
      ..deleted = deleted ?? this.deleted
      ..duration = duration ?? this.duration
      ..id = id ?? this.id
      ..myValidity = myValidity ?? this.myValidity
      ..optionA = optionA ?? this.optionA
      ..optionB = optionB ?? this.optionB
      ..optionC = optionC ?? this.optionC
      ..optionD = optionD ?? this.optionD
      ..parsing = parsing ?? this.parsing
      ..questionMain = questionMain ?? this.questionMain
      ..questionTypeDicId = questionTypeDicId ?? this.questionTypeDicId
      ..questionValidity = questionValidity ?? this.questionValidity
      ..score = score ?? this.score
      ..textbookId = textbookId ?? this.textbookId
      ..timeCount = timeCount ?? this.timeCount
      ..updateBy = updateBy ?? this.updateBy
      ..updateById = updateById ?? this.updateById
      ..updateDate = updateDate ?? this.updateDate;
  }
}

EducationQuizResultMainVOSQuestionList $EducationQuizResultMainVOSQuestionListFromJson(Map<String, dynamic> json) {
  final EducationQuizResultMainVOSQuestionList educationQuizResultMainVOSQuestionList = EducationQuizResultMainVOSQuestionList();
  final String? id = jsonConvert.convert<String>(json['id']);
  if (id != null) {
    educationQuizResultMainVOSQuestionList.id = id;
  }
  final String? optionA = jsonConvert.convert<String>(json['optionA']);
  if (optionA != null) {
    educationQuizResultMainVOSQuestionList.optionA = optionA;
  }
  final String? optionB = jsonConvert.convert<String>(json['optionB']);
  if (optionB != null) {
    educationQuizResultMainVOSQuestionList.optionB = optionB;
  }
  final String? optionC = jsonConvert.convert<String>(json['optionC']);
  if (optionC != null) {
    educationQuizResultMainVOSQuestionList.optionC = optionC;
  }
  final String? optionD = jsonConvert.convert<String>(json['optionD']);
  if (optionD != null) {
    educationQuizResultMainVOSQuestionList.optionD = optionD;
  }
  final String? questionMain = jsonConvert.convert<String>(json['questionMain']);
  if (questionMain != null) {
    educationQuizResultMainVOSQuestionList.questionMain = questionMain;
  }
  final String? questionTypeDicId = jsonConvert.convert<String>(json['questionTypeDicId']);
  if (questionTypeDicId != null) {
    educationQuizResultMainVOSQuestionList.questionTypeDicId = questionTypeDicId;
  }
  final int? score = jsonConvert.convert<int>(json['score']);
  if (score != null) {
    educationQuizResultMainVOSQuestionList.score = score;
  }
  return educationQuizResultMainVOSQuestionList;
}

Map<String, dynamic> $EducationQuizResultMainVOSQuestionListToJson(EducationQuizResultMainVOSQuestionList entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['id'] = entity.id;
  data['optionA'] = entity.optionA;
  data['optionB'] = entity.optionB;
  data['optionC'] = entity.optionC;
  data['optionD'] = entity.optionD;
  data['questionMain'] = entity.questionMain;
  data['questionTypeDicId'] = entity.questionTypeDicId;
  data['score'] = entity.score;
  return data;
}

extension EducationQuizResultMainVOSQuestionListExtension on EducationQuizResultMainVOSQuestionList {
  EducationQuizResultMainVOSQuestionList copyWith({
    String? id,
    String? optionA,
    String? optionB,
    String? optionC,
    String? optionD,
    String? questionMain,
    String? questionTypeDicId,
    int? score,
  }) {
    return EducationQuizResultMainVOSQuestionList()
      ..id = id ?? this.id
      ..optionA = optionA ?? this.optionA
      ..optionB = optionB ?? this.optionB
      ..optionC = optionC ?? this.optionC
      ..optionD = optionD ?? this.optionD
      ..questionMain = questionMain ?? this.questionMain
      ..questionTypeDicId = questionTypeDicId ?? this.questionTypeDicId
      ..score = score ?? this.score;
  }
}

EducationQuizResultMainVOSQuestionListOne $EducationQuizResultMainVOSQuestionListOneFromJson(Map<String, dynamic> json) {
  final EducationQuizResultMainVOSQuestionListOne educationQuizResultMainVOSQuestionListOne = EducationQuizResultMainVOSQuestionListOne();
  final String? addDate = jsonConvert.convert<String>(json['addDate']);
  if (addDate != null) {
    educationQuizResultMainVOSQuestionListOne.addDate = addDate;
  }
  final String? companyCode = jsonConvert.convert<String>(json['companyCode']);
  if (companyCode != null) {
    educationQuizResultMainVOSQuestionListOne.companyCode = companyCode;
  }
  final String? createBy = jsonConvert.convert<String>(json['createBy']);
  if (createBy != null) {
    educationQuizResultMainVOSQuestionListOne.createBy = createBy;
  }
  final String? createById = jsonConvert.convert<String>(json['createById']);
  if (createById != null) {
    educationQuizResultMainVOSQuestionListOne.createById = createById;
  }
  final String? createDate = jsonConvert.convert<String>(json['createDate']);
  if (createDate != null) {
    educationQuizResultMainVOSQuestionListOne.createDate = createDate;
  }
  final String? id = jsonConvert.convert<String>(json['id']);
  if (id != null) {
    educationQuizResultMainVOSQuestionListOne.id = id;
  }
  final String? optionA = jsonConvert.convert<String>(json['optionA']);
  if (optionA != null) {
    educationQuizResultMainVOSQuestionListOne.optionA = optionA;
  }
  final String? optionB = jsonConvert.convert<String>(json['optionB']);
  if (optionB != null) {
    educationQuizResultMainVOSQuestionListOne.optionB = optionB;
  }
  final String? optionC = jsonConvert.convert<String>(json['optionC']);
  if (optionC != null) {
    educationQuizResultMainVOSQuestionListOne.optionC = optionC;
  }
  final String? optionD = jsonConvert.convert<String>(json['optionD']);
  if (optionD != null) {
    educationQuizResultMainVOSQuestionListOne.optionD = optionD;
  }
  final String? parsing = jsonConvert.convert<String>(json['parsing']);
  if (parsing != null) {
    educationQuizResultMainVOSQuestionListOne.parsing = parsing;
  }
  final String? questionMain = jsonConvert.convert<String>(json['questionMain']);
  if (questionMain != null) {
    educationQuizResultMainVOSQuestionListOne.questionMain = questionMain;
  }
  final String? questionTypeDicId = jsonConvert.convert<String>(json['questionTypeDicId']);
  if (questionTypeDicId != null) {
    educationQuizResultMainVOSQuestionListOne.questionTypeDicId = questionTypeDicId;
  }
  final String? questionValidity = jsonConvert.convert<String>(json['questionValidity']);
  if (questionValidity != null) {
    educationQuizResultMainVOSQuestionListOne.questionValidity = questionValidity;
  }
  final int? score = jsonConvert.convert<int>(json['score']);
  if (score != null) {
    educationQuizResultMainVOSQuestionListOne.score = score;
  }
  final String? textbookId = jsonConvert.convert<String>(json['textbookId']);
  if (textbookId != null) {
    educationQuizResultMainVOSQuestionListOne.textbookId = textbookId;
  }
  final int? type = jsonConvert.convert<int>(json['type']);
  if (type != null) {
    educationQuizResultMainVOSQuestionListOne.type = type;
  }
  final String? updateBy = jsonConvert.convert<String>(json['updateBy']);
  if (updateBy != null) {
    educationQuizResultMainVOSQuestionListOne.updateBy = updateBy;
  }
  final String? updateById = jsonConvert.convert<String>(json['updateById']);
  if (updateById != null) {
    educationQuizResultMainVOSQuestionListOne.updateById = updateById;
  }
  final String? updateDate = jsonConvert.convert<String>(json['updateDate']);
  if (updateDate != null) {
    educationQuizResultMainVOSQuestionListOne.updateDate = updateDate;
  }
  final String? userId = jsonConvert.convert<String>(json['userId']);
  if (userId != null) {
    educationQuizResultMainVOSQuestionListOne.userId = userId;
  }
  return educationQuizResultMainVOSQuestionListOne;
}

Map<String, dynamic> $EducationQuizResultMainVOSQuestionListOneToJson(EducationQuizResultMainVOSQuestionListOne entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['addDate'] = entity.addDate;
  data['companyCode'] = entity.companyCode;
  data['createBy'] = entity.createBy;
  data['createById'] = entity.createById;
  data['createDate'] = entity.createDate;
  data['id'] = entity.id;
  data['optionA'] = entity.optionA;
  data['optionB'] = entity.optionB;
  data['optionC'] = entity.optionC;
  data['optionD'] = entity.optionD;
  data['parsing'] = entity.parsing;
  data['questionMain'] = entity.questionMain;
  data['questionTypeDicId'] = entity.questionTypeDicId;
  data['questionValidity'] = entity.questionValidity;
  data['score'] = entity.score;
  data['textbookId'] = entity.textbookId;
  data['type'] = entity.type;
  data['updateBy'] = entity.updateBy;
  data['updateById'] = entity.updateById;
  data['updateDate'] = entity.updateDate;
  data['userId'] = entity.userId;
  return data;
}

extension EducationQuizResultMainVOSQuestionListOneExtension on EducationQuizResultMainVOSQuestionListOne {
  EducationQuizResultMainVOSQuestionListOne copyWith({
    String? addDate,
    String? companyCode,
    String? createBy,
    String? createById,
    String? createDate,
    String? id,
    String? optionA,
    String? optionB,
    String? optionC,
    String? optionD,
    String? parsing,
    String? questionMain,
    String? questionTypeDicId,
    String? questionValidity,
    int? score,
    String? textbookId,
    int? type,
    String? updateBy,
    String? updateById,
    String? updateDate,
    String? userId,
  }) {
    return EducationQuizResultMainVOSQuestionListOne()
      ..addDate = addDate ?? this.addDate
      ..companyCode = companyCode ?? this.companyCode
      ..createBy = createBy ?? this.createBy
      ..createById = createById ?? this.createById
      ..createDate = createDate ?? this.createDate
      ..id = id ?? this.id
      ..optionA = optionA ?? this.optionA
      ..optionB = optionB ?? this.optionB
      ..optionC = optionC ?? this.optionC
      ..optionD = optionD ?? this.optionD
      ..parsing = parsing ?? this.parsing
      ..questionMain = questionMain ?? this.questionMain
      ..questionTypeDicId = questionTypeDicId ?? this.questionTypeDicId
      ..questionValidity = questionValidity ?? this.questionValidity
      ..score = score ?? this.score
      ..textbookId = textbookId ?? this.textbookId
      ..type = type ?? this.type
      ..updateBy = updateBy ?? this.updateBy
      ..updateById = updateById ?? this.updateById
      ..updateDate = updateDate ?? this.updateDate
      ..userId = userId ?? this.userId;
  }
}

EducationQuizResultQuestionList $EducationQuizResultQuestionListFromJson(Map<String, dynamic> json) {
  final EducationQuizResultQuestionList educationQuizResultQuestionList = EducationQuizResultQuestionList();
  final String? companyCode = jsonConvert.convert<String>(json['companyCode']);
  if (companyCode != null) {
    educationQuizResultQuestionList.companyCode = companyCode;
  }
  final String? createBy = jsonConvert.convert<String>(json['createBy']);
  if (createBy != null) {
    educationQuizResultQuestionList.createBy = createBy;
  }
  final String? createById = jsonConvert.convert<String>(json['createById']);
  if (createById != null) {
    educationQuizResultQuestionList.createById = createById;
  }
  final String? createDate = jsonConvert.convert<String>(json['createDate']);
  if (createDate != null) {
    educationQuizResultQuestionList.createDate = createDate;
  }
  final String? deleted = jsonConvert.convert<String>(json['deleted']);
  if (deleted != null) {
    educationQuizResultQuestionList.deleted = deleted;
  }
  final int? duration = jsonConvert.convert<int>(json['duration']);
  if (duration != null) {
    educationQuizResultQuestionList.duration = duration;
  }
  final String? id = jsonConvert.convert<String>(json['id']);
  if (id != null) {
    educationQuizResultQuestionList.id = id;
  }
  final String? myValidity = jsonConvert.convert<String>(json['myValidity']);
  if (myValidity != null) {
    educationQuizResultQuestionList.myValidity = myValidity;
  }
  final String? optionA = jsonConvert.convert<String>(json['optionA']);
  if (optionA != null) {
    educationQuizResultQuestionList.optionA = optionA;
  }
  final String? optionB = jsonConvert.convert<String>(json['optionB']);
  if (optionB != null) {
    educationQuizResultQuestionList.optionB = optionB;
  }
  final String? optionC = jsonConvert.convert<String>(json['optionC']);
  if (optionC != null) {
    educationQuizResultQuestionList.optionC = optionC;
  }
  final String? optionD = jsonConvert.convert<String>(json['optionD']);
  if (optionD != null) {
    educationQuizResultQuestionList.optionD = optionD;
  }
  final String? parsing = jsonConvert.convert<String>(json['parsing']);
  if (parsing != null) {
    educationQuizResultQuestionList.parsing = parsing;
  }
  final String? questionMain = jsonConvert.convert<String>(json['questionMain']);
  if (questionMain != null) {
    educationQuizResultQuestionList.questionMain = questionMain;
  }
  final String? questionTypeDicId = jsonConvert.convert<String>(json['questionTypeDicId']);
  if (questionTypeDicId != null) {
    educationQuizResultQuestionList.questionTypeDicId = questionTypeDicId;
  }
  final String? questionValidity = jsonConvert.convert<String>(json['questionValidity']);
  if (questionValidity != null) {
    educationQuizResultQuestionList.questionValidity = questionValidity;
  }
  final int? score = jsonConvert.convert<int>(json['score']);
  if (score != null) {
    educationQuizResultQuestionList.score = score;
  }
  final String? textbookId = jsonConvert.convert<String>(json['textbookId']);
  if (textbookId != null) {
    educationQuizResultQuestionList.textbookId = textbookId;
  }
  final String? timeCount = jsonConvert.convert<String>(json['timeCount']);
  if (timeCount != null) {
    educationQuizResultQuestionList.timeCount = timeCount;
  }
  final String? updateBy = jsonConvert.convert<String>(json['updateBy']);
  if (updateBy != null) {
    educationQuizResultQuestionList.updateBy = updateBy;
  }
  final String? updateById = jsonConvert.convert<String>(json['updateById']);
  if (updateById != null) {
    educationQuizResultQuestionList.updateById = updateById;
  }
  final String? updateDate = jsonConvert.convert<String>(json['updateDate']);
  if (updateDate != null) {
    educationQuizResultQuestionList.updateDate = updateDate;
  }
  return educationQuizResultQuestionList;
}

Map<String, dynamic> $EducationQuizResultQuestionListToJson(EducationQuizResultQuestionList entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['companyCode'] = entity.companyCode;
  data['createBy'] = entity.createBy;
  data['createById'] = entity.createById;
  data['createDate'] = entity.createDate;
  data['deleted'] = entity.deleted;
  data['duration'] = entity.duration;
  data['id'] = entity.id;
  data['myValidity'] = entity.myValidity;
  data['optionA'] = entity.optionA;
  data['optionB'] = entity.optionB;
  data['optionC'] = entity.optionC;
  data['optionD'] = entity.optionD;
  data['parsing'] = entity.parsing;
  data['questionMain'] = entity.questionMain;
  data['questionTypeDicId'] = entity.questionTypeDicId;
  data['questionValidity'] = entity.questionValidity;
  data['score'] = entity.score;
  data['textbookId'] = entity.textbookId;
  data['timeCount'] = entity.timeCount;
  data['updateBy'] = entity.updateBy;
  data['updateById'] = entity.updateById;
  data['updateDate'] = entity.updateDate;
  return data;
}

extension EducationQuizResultQuestionListExtension on EducationQuizResultQuestionList {
  EducationQuizResultQuestionList copyWith({
    String? companyCode,
    String? createBy,
    String? createById,
    String? createDate,
    String? deleted,
    int? duration,
    String? id,
    String? myValidity,
    String? optionA,
    String? optionB,
    String? optionC,
    String? optionD,
    String? parsing,
    String? questionMain,
    String? questionTypeDicId,
    String? questionValidity,
    int? score,
    String? textbookId,
    String? timeCount,
    String? updateBy,
    String? updateById,
    String? updateDate,
  }) {
    return EducationQuizResultQuestionList()
      ..companyCode = companyCode ?? this.companyCode
      ..createBy = createBy ?? this.createBy
      ..createById = createById ?? this.createById
      ..createDate = createDate ?? this.createDate
      ..deleted = deleted ?? this.deleted
      ..duration = duration ?? this.duration
      ..id = id ?? this.id
      ..myValidity = myValidity ?? this.myValidity
      ..optionA = optionA ?? this.optionA
      ..optionB = optionB ?? this.optionB
      ..optionC = optionC ?? this.optionC
      ..optionD = optionD ?? this.optionD
      ..parsing = parsing ?? this.parsing
      ..questionMain = questionMain ?? this.questionMain
      ..questionTypeDicId = questionTypeDicId ?? this.questionTypeDicId
      ..questionValidity = questionValidity ?? this.questionValidity
      ..score = score ?? this.score
      ..textbookId = textbookId ?? this.textbookId
      ..timeCount = timeCount ?? this.timeCount
      ..updateBy = updateBy ?? this.updateBy
      ..updateById = updateById ?? this.updateById
      ..updateDate = updateDate ?? this.updateDate;
  }
}
